<!DOCTYPE html>
<html lang="">


<head><meta name="generator" content="Hexo 3.9.0">
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
  <title>
    king019
  </title>
  <meta name="description" content>
  
  <meta name="author" content="king019">

  <meta http-equiv="Cache-Control" content="no-transform">
  <meta http-equiv="Cache-Control" content="no-siteapp">
  <meta name="theme-color" content="#1e2327">
  <link rel="apple-touch-icon" href="https://github.githubassets.com/apple-touch-icon.png">
  <link rel="apple-touch-icon" sizes="180x180" href="https://github.githubassets.com/apple-touch-icon-180x180.png">

  <link rel="icon" type="image/x-icon" href="https://github.githubassets.com/favicon.ico">
  <link rel="stylesheet" href="/css/main.css">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
  

  

  <script src="//cdnjs.cloudflare.com/ajax/libs/vue/1.0.25-csp/vue.min.js"></script>
  <script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.11.2/moment.min.js"></script>
</head>

<body id="replica-app">

<nav class="navbar-wrapper">
  <div class="navbar">
    <div class="container clearfix">
      <a href="/" class="navbar-logo"><i class="fa fa-github"></i></a>

      <div class="navbar-search float-left desktop-only">
        <div class="navbar-search-form">
          <label for="gsc-i-id1">This website</label>
          <div id="google-search">
            <gcse:search></gcse:search>
          </div>
        </div>
      </div>

      <ul class="navbar-nav float-left">
        
        <li><a href="/archives">Archives</a></li>
        
        
        <li><a href="/categories">Categories</a></li>
        
        
        <li><a href="/tags">Tags</a></li>
        
        
        <li class="desktop-only"><a href="/atom.xml" target="_blank">RSS</a></li>
        
      </ul>

      <ul class="navbar-nav user-nav float-right desktop-only">
        <li class="user-nav-notification">
          <a><span class="user-nav-unread"></span><i class="fa fa-bell"></i></a>
        </li>
        <li>
          <a><i class="fa fa-plus"></i> <i class="fa fa-caret-down"></i></a>
        </li>
        <li class="user-nav-logo">
          <a><img src="/assets/head.jpg"> <i class="fa fa-caret-down"></i></i></a>
        </li>
      </ul>
    </div>
  </div>
</nav>

<div class="main-container">
  

<div class="container-lg">
  

<div class="blog-intro">
  <div class="blog-intro-user">
    <img class="avatar" src="/assets/head.jpg">
    <div class="user-name">
      <div class="blog-title">king019</div>
      <div class="blog-author">king019</div>
        <ul class="user-detail mobile-only">
    
    <li>
      <i class="fa fa-map-marker"></i>
      China
    </li>
    
    <li>
      <i class="fa fa-envelope-o"></i>
      <a href="mailto:king019@aliyun.com">king019@aliyun.com</a>
    </li>
    
    <li>
      <i class="fa fa-link"></i>
      <a href="https://king019.github.io">https://king019.github.io</a>
    </li>
  </ul>
    </div>
    <div class="blog-description">
      
    </div>
  </div>

  <ul class="user-detail desktop-only">
    
    <li>
      <i class="fa fa-map-marker"></i>
      China
    </li>
    
    <li>
      <i class="fa fa-envelope-o"></i>
      <a href="mailto:king019@aliyun.com">king019@aliyun.com</a>
    </li>
    
    <li>
      <i class="fa fa-link"></i>
      <a href="https://king019.github.io">https://king019.github.io</a>
    </li>
  </ul>

  <div class="social-media desktop-only">
    <h4>Social Media</h4>
    <ul>
      
      <li class="social-media-item"><a href="https://github.com/king019" target="_blank"><i class="fa fa-github"></i></a></li>
      
    </ul>
  </div>
</div>


  <div class="blog-detail">
    
<nav class="blog-detail-nav desktop-only">
  <ul class="clearfix">
    <li class="selected">
      <a href="/">Overview</a></li>
    <li class="">
      <a href="/archives">Posts <span class="counter">67</span></a>
    </li>
    <li class="">
      <a href="/categories">Categories <span
                class="counter">20</span></a></li>
    <li class="">
      <a href="/tags">Tags <span class="counter">53</span></a></li>
  </ul>
</nav>

    <div class="body-secondary">
      <p class="right-title">Recent post</p>
      <ul class="recent-post clearfix">
        
        <li class="recent-post-item">
          <div class="clearfix">
            <h5 class="post-title text-ellipsis">
              <i class="fa fa-bars"></i>
              <a href="/2021/03/07/middleware/spring/source/spring_boot_config_order/">spring boot加载配置文件顺序</a>
            </h5>
            <p class="post-description text-ellipsis desktop-only">
                从SpringBoot源码分析 配置文件的加载原理和优先级  数据创建   value/auto
            </p>
            <p class="post-info desktop-only">
              <span>
                
                  <a class="category-link" href="/categories/spring/"><i class="fa fa-folder-open"></i> spring</a>
                
              </span>
              <span><i class="fa fa-tag"></i> 2 </span>
            </p>
          </div>
        </li>
        
        <li class="recent-post-item">
          <div class="clearfix">
            <h5 class="post-title text-ellipsis">
              <i class="fa fa-bars"></i>
              <a href="/2021/03/07/middleware/spring/source/spring_config/">spring config</a>
            </h5>
            <p class="post-description text-ellipsis desktop-only">
                 run       1   2   3       初始化   ApplicationCont
            </p>
            <p class="post-info desktop-only">
              <span>
                
                  <a class="category-link" href="/categories/spring/"><i class="fa fa-folder-open"></i> spring</a>
                
              </span>
              <span><i class="fa fa-tag"></i> 1 </span>
            </p>
          </div>
        </li>
        
        <li class="recent-post-item">
          <div class="clearfix">
            <h5 class="post-title text-ellipsis">
              <i class="fa fa-bars"></i>
              <a href="/2021/03/07/middleware/spring/source/spring_servlet/">spring servlet</a>
            </h5>
            <p class="post-description text-ellipsis desktop-only">
               一,controller实际入口 org.springframework.web.servlet.
            </p>
            <p class="post-info desktop-only">
              <span>
                
                  <a class="category-link" href="/categories/spring/"><i class="fa fa-folder-open"></i> spring</a>
                
              </span>
              <span><i class="fa fa-tag"></i> 2 </span>
            </p>
          </div>
        </li>
        
        <li class="recent-post-item">
          <div class="clearfix">
            <h5 class="post-title text-ellipsis">
              <i class="fa fa-bars"></i>
              <a href="/2021/03/07/middleware/spring/source/spring_boot_filter/spring_boot_filter/">spring java web filter</a>
            </h5>
            <p class="post-description text-ellipsis desktop-only">
                Spring Boot 之 Filter顺序配置 @Order无效原因解读（源码理解）  
  
            </p>
            <p class="post-info desktop-only">
              <span>
                
                  <a class="category-link" href="/categories/spring/"><i class="fa fa-folder-open"></i> spring</a>
                
              </span>
              <span><i class="fa fa-tag"></i> 1 </span>
            </p>
          </div>
        </li>
        
        <li class="recent-post-item">
          <div class="clearfix">
            <h5 class="post-title text-ellipsis">
              <i class="fa fa-bars"></i>
              <a href="/2021/03/07/middleware/spring/source/spring_boot_filter/extra/spring_swagger/">spring swagger</a>
            </h5>
            <p class="post-description text-ellipsis desktop-only">
               一,api注解解析 1,注解解析入口 
      1       springfox.docum
            </p>
            <p class="post-info desktop-only">
              <span>
                
                  <a class="category-link" href="/categories/spring/"><i class="fa fa-folder-open"></i> spring</a>
                
              </span>
              <span><i class="fa fa-tag"></i> 1 </span>
            </p>
          </div>
        </li>
        
        <li class="recent-post-item">
          <div class="clearfix">
            <h5 class="post-title text-ellipsis">
              <i class="fa fa-bars"></i>
              <a href="/2021/03/07/middleware/http/asynchttpclient/">asynchttp分析</a>
            </h5>
            <p class="post-description text-ellipsis desktop-only">
               asynchttpclient 创建sslcontext io.netty.handler.ssl
            </p>
            <p class="post-info desktop-only">
              <span>
                
                  <a class="category-link" href="/categories/htp/"><i class="fa fa-folder-open"></i> htp</a>
                
              </span>
              <span><i class="fa fa-tag"></i> 1 </span>
            </p>
          </div>
        </li>
        
      </ul>
      <div class="calendar-container" id="calendar">
  <div class="calendar">
    <h3>
      {{posts.length}} contributions in the last year
    </h3>
    <div class="calendar-graph-container">
      <div class="calendar-graph">
        <svg width="676" height="104" @mouseout="mouseoverDate=null">
          <g transform="translate(16, 20)">
            <g v-for="week in calendar" :transform="week.transform">
              <rect v-for="day in week.days"
                    :x="day.x"
                    :y="day.y"
                    :fill="day.fill"
                    @click="selectedDate=day.date"
                    @mouseover="mouseoverDate=day.date"
                    :class="{active:selectedDate===day.date}"
                    data-count="{{day.posts.length}}"
                    data-date="{{day.date}}"
                    class="day" width="10" height="10"
              ></rect>
            </g>

            <text v-for="month in monthLabels"
                  :x="month.x"
                  y="-5"
                  class="month">{{month.text}}
            </text>


            <text text-anchor="start" class="wday" dx="-14" dy="8"
                  style="display: none;">S
            </text>
            <text text-anchor="start" class="wday" dx="-14" dy="20">Mon</text>
            <text text-anchor="start" class="wday" dx="-14" dy="32"
                  style="display: none;">T
            </text>
            <text text-anchor="start" class="wday" dx="-14" dy="44">Wed</text>
            <text text-anchor="start" class="wday" dx="-14" dy="57"
                  style="display: none;">T
            </text>
            <text text-anchor="start" class="wday" dx="-14" dy="69">Fri</text>
            <text text-anchor="start" class="wday" dx="-14" dy="81"
                  style="display: none;">S
            </text>
          </g>
        </svg>
        <div class="svg-tip svg-tip-one-line"
             v-bind:style="{ top: svgtip.top, left: svgtip.left, display: svgtip.display}">
          <strong>{{svgtip.text}}</strong> on
          {{moment(mouseoverDate).format('MMM DD, YYYY')}}
        </div>
      </div>
      <div class="calendar-footer clearfix">
      <span>
        <a href="#">Learn how we count contributions.</a>
      </span>
        <div class="calendar-legend">
          <span>Less</span>
          <ul class="legend">
            <li style="background-color: #eee"></li>
            <li style="background-color: #d6e685"></li>
            <li style="background-color: #8cc665"></li>
            <li style="background-color: #44a340"></li>
            <li style="background-color: #1e6823"></li>
          </ul>
          <span>More</span>
        </div>
      </div>
    </div>
  </div>

  <h3>Contribution activity</h3>
  <div class="contribution-list">
    <ul>
      <li v-for="post in posts | filterBy selectedDate in 'date'">
        <a href="{{post.url}}">{{post.title}}
        </a>
        <span>{{post.date}}</span>
      </li>
    </ul>
  </div>
</div>


<script>
  var posts = [{"date":"2021-03-07","title":"common","url":"https://king019.github.io/2021/03/07/common/common/"},{"date":"2021-03-07","title":"整体框架","url":"https://king019.github.io/2021/03/07/framework/框架/"},{"date":"2021-03-07","title":"jvm cmd","url":"https://king019.github.io/2021/03/07/java/cmd/"},{"date":"2021-03-07","title":"collection","url":"https://king019.github.io/2021/03/07/java/collection/"},{"date":"2021-03-07","title":"jvm","url":"https://king019.github.io/2021/03/07/java/jvm/"},{"date":"2021-03-07","title":"map","url":"https://king019.github.io/2021/03/07/java/map/"},{"date":"2021-03-07","title":"linux soft","url":"https://king019.github.io/2021/03/07/linux/centos_install_soft/"},{"date":"2021-03-07","title":"linux cmd","url":"https://king019.github.io/2021/03/07/linux/cmd/"},{"date":"2021-03-07","title":"linux yum命令详解","url":"https://king019.github.io/2021/03/07/linux/linux_yum_cmd_detail/"},{"date":"2021-03-07","title":"ssh","url":"https://king019.github.io/2021/03/07/linux/ssh/"},{"date":"2021-03-07","title":"navigation about","url":"https://king019.github.io/2021/03/07/navigation/navigation/"},{"date":"2021-03-07","title":"hexo yilia模板构建","url":"https://king019.github.io/2021/03/07/themes/yilia/"},{"date":"2021-03-07","title":"分布式","url":"https://king019.github.io/2021/03/07/framework/cloud/分布式框架/"},{"date":"2021-03-07","title":"分布式","url":"https://king019.github.io/2021/03/07/framework/cloud/分布式框架1/"},{"date":"2021-03-07","title":"分布式","url":"https://king019.github.io/2021/03/07/framework/cloud/分布式框架2/"},{"date":"2021-03-07","title":"cms_log","url":"https://king019.github.io/2021/03/07/java/jvm/cms_log/"},{"date":"2021-03-07","title":"lock sychronized","url":"https://king019.github.io/2021/03/07/java/jvm/lock/"},{"date":"2021-03-07","title":"java oom","url":"https://king019.github.io/2021/03/07/java/jvm/oom/"},{"date":"2021-03-07","title":"java oom over","url":"https://king019.github.io/2021/03/07/java/jvm/oom_over/"},{"date":"2021-03-07","title":"ThreadLocal深入理解与内存泄露分析","url":"https://king019.github.io/2021/03/07/java/jvm/oom_threadlocal/"},{"date":"2021-03-07","title":"nacos","url":"https://king019.github.io/2021/03/07/middleware/alibaba/nacos/"},{"date":"2021-03-07","title":"asynchttp分析","url":"https://king019.github.io/2021/03/07/middleware/http/asynchttpclient/"},{"date":"2021-03-07","title":"okhttp分析","url":"https://king019.github.io/2021/03/07/middleware/http/okhttp/"},{"date":"2021-03-07","title":"spring about","url":"https://king019.github.io/2021/03/07/middleware/spring/spring/"},{"date":"2021-03-07","title":"docker","url":"https://king019.github.io/2021/03/07/soft/docker/docker/"},{"date":"2021-03-07","title":"docker_hub","url":"https://king019.github.io/2021/03/07/soft/docker/docker_hub/"},{"date":"2021-03-07","title":"idea devtools","url":"https://king019.github.io/2021/03/07/soft/idea/jrebel/"},{"date":"2021-03-07","title":"markdown about","url":"https://king019.github.io/2021/03/07/soft/markdown/markdown/"},{"date":"2021-03-07","title":"mvn命令","url":"https://king019.github.io/2021/03/07/soft/mvn/cmd/"},{"date":"2021-03-07","title":"sublime","url":"https://king019.github.io/2021/03/07/soft/sublime/sublime/"},{"date":"2021-03-07","title":"分布式cloud脑图","url":"https://king019.github.io/2021/03/07/framework/cloud/mind/分布式框架cloud脑图/"},{"date":"2021-03-07","title":"分布式分布式脑图","url":"https://king019.github.io/2021/03/07/framework/cloud/mind/分布式框架分布式脑图/"},{"date":"2021-03-07","title":"分布式应用脑图","url":"https://king019.github.io/2021/03/07/framework/cloud/mind/分布式框架应用脑图/"},{"date":"2021-03-07","title":"分布式整体脑图","url":"https://king019.github.io/2021/03/07/framework/cloud/mind/分布式框架整体脑图/"},{"date":"2021-03-07","title":"分布式设计模式脑图","url":"https://king019.github.io/2021/03/07/framework/cloud/mind/分布式框架设计模式脑图/"},{"date":"2021-03-07","title":"jvm区域","url":"https://king019.github.io/2021/03/07/framework/java/内存/1_jvm区域/"},{"date":"2021-03-07","title":"jvm垃圾回收","url":"https://king019.github.io/2021/03/07/framework/java/内存/2_jvm垃圾回收/"},{"date":"2021-03-07","title":"jvm命令","url":"https://king019.github.io/2021/03/07/framework/java/内存/3_jvm命令/"},{"date":"2021-03-07","title":"jvm执行","url":"https://king019.github.io/2021/03/07/framework/java/内存/4_jvm执行/"},{"date":"2021-03-07","title":"jvm编译优化","url":"https://king019.github.io/2021/03/07/framework/java/内存/5_jvm编译优化/"},{"date":"2021-03-07","title":"jvm并发","url":"https://king019.github.io/2021/03/07/framework/java/内存/6_jvm并发/"},{"date":"2021-03-07","title":"并发实战","url":"https://king019.github.io/2021/03/07/framework/java/并发/1_并发实战/"},{"date":"2021-03-07","title":"并发编程的艺术","url":"https://king019.github.io/2021/03/07/framework/java/并发/1_并发编程的艺术/"},{"date":"2021-03-07","title":"集合","url":"https://king019.github.io/2021/03/07/framework/java/集合/1_集合/"},{"date":"2021-03-07","title":"RocketMQ消费失败消息深入分析","url":"https://king019.github.io/2021/03/07/middleware/alibaba/rocketmq/RocketMQ消费失败消息深入分析/"},{"date":"2021-03-07","title":"mybatis缓存","url":"https://king019.github.io/2021/03/07/middleware/database/mybatis/mybatis_cache/"},{"date":"2021-03-07","title":"mysql","url":"https://king019.github.io/2021/03/07/middleware/database/mysql/mysql/"},{"date":"2021-03-07","title":"mysql操作","url":"https://king019.github.io/2021/03/07/middleware/database/mysql/mysql事务操作/"},{"date":"2021-03-07","title":"mysql技术内幕","url":"https://king019.github.io/2021/03/07/middleware/database/mysql/mysql技术内幕_innodb存储引擎/"},{"date":"2021-03-07","title":"不使用索引情况","url":"https://king019.github.io/2021/03/07/middleware/database/mysql/不使用索引的情况/"},{"date":"2021-03-07","title":"redis设计和实现","url":"https://king019.github.io/2021/03/07/middleware/database/redis/redis设计和实现/"},{"date":"2021-03-07","title":"http code","url":"https://king019.github.io/2021/03/07/middleware/protocol/http/http_code/"},{"date":"2021-03-07","title":"http protocol","url":"https://king019.github.io/2021/03/07/middleware/protocol/http/http_protocol/"},{"date":"2021-03-07","title":"tcpip","url":"https://king019.github.io/2021/03/07/middleware/protocol/tcpip/tcpip/"},{"date":"2021-03-07","title":"tcpip相关","url":"https://king019.github.io/2021/03/07/middleware/protocol/tcpip/tcpip_about/"},{"date":"2021-03-07","title":"grpc负责均衡","url":"https://king019.github.io/2021/03/07/middleware/rpc/grpc/grpc负载均衡/"},{"date":"2021-03-07","title":"spring boot加载配置文件顺序","url":"https://king019.github.io/2021/03/07/middleware/spring/source/spring_boot_config_order/"},{"date":"2021-03-07","title":"spring config","url":"https://king019.github.io/2021/03/07/middleware/spring/source/spring_config/"},{"date":"2021-03-07","title":"spring servlet","url":"https://king019.github.io/2021/03/07/middleware/spring/source/spring_servlet/"},{"date":"2021-03-07","title":"深入式理解分布式缓存","url":"https://king019.github.io/2021/03/07/middleware/database/redis/深入理解分布式缓存/"},{"date":"2021-03-07","title":"RocketMQ生产者过程","url":"https://king019.github.io/2021/03/07/middleware/alibaba/rocketmq/使用者/RocketMQ_生产者/"},{"date":"2021-03-07","title":"mysql explain","url":"https://king019.github.io/2021/03/07/middleware/database/mysql/mysql文档/mysql_explain/"},{"date":"2021-03-07","title":"mysql 引擎","url":"https://king019.github.io/2021/03/07/middleware/database/mysql/mysql文档/mysql_引擎/"},{"date":"2021-03-07","title":"mysql 数据类型","url":"https://king019.github.io/2021/03/07/middleware/database/mysql/mysql文档/mysql_数据类型/"},{"date":"2021-03-07","title":"mysql sql 语法","url":"https://king019.github.io/2021/03/07/middleware/database/mysql/mysql文档/mysql_语法/"},{"date":"2021-03-07","title":"spring java web filter","url":"https://king019.github.io/2021/03/07/middleware/spring/source/spring_boot_filter/spring_boot_filter/"},{"date":"2021-03-07","title":"spring swagger","url":"https://king019.github.io/2021/03/07/middleware/spring/source/spring_boot_filter/extra/spring_swagger/"}];
  var today = moment().format('YYYY-MM-DD');
  var oneYearAgo = moment(today).subtract(1, 'years');
  posts = posts.filter(function(post) {
    return new Date(post.date) > oneYearAgo;
  });
  var monthLabels = [];
  var monthName = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
  var calendar = getCalendar(posts);

  var dateRange = {
    start: moment(oneYearAgo).format('MMM D, YYYY'),
    end: moment().format('MMM D, YYYY')
  }

  var app = new Vue({
    el: '#calendar',
    data: {
      posts: posts,
      selectedDate: null,
      calendar: calendar,
      dateRange: dateRange,
      mouseoverDate: null,
      moment: moment,
      monthLabels: monthLabels
    },
    created: function() {
      this.selectedDate = 'none';
    },
    methods: {},
    computed: {
      svgtip: function() {
        var date = this.mouseoverDate;
        var display = date ? 'block' : 'none';
        if (date) {
          var coordinator = getIndexByDate(date);
          var x = coordinator[0];
          var y = coordinator[1];
          var len = this.calendar[x].days[y].posts.length;
          var text = len ? len + ' contributions' : 'No contributions';
          var left = coordinator[0] * 12 - 37 + 'px';
          coordinator[1] = coordinator[0] ? coordinator[1] : coordinator[1] + oneYearAgo.day();
          var top = coordinator[1] * 12 + 12 - 32 + 'px';
        }
        return {
          text: text,
          left: left,
          top: top,
          display: display
        }
      }
    }
  });

  function getCalendar(posts) {
    // raw calendar
    var maxCount = 0;
    var tmr = new Date();
    tmr.setDate(tmr.getDate() + 1);
    var tmrStr = tmr.toISOString().slice(0, 10);
    var date = new Date();
    date.setYear(date.getFullYear() - 1); // start date is a year ago;
    var calendar = [];
    while (date.toISOString().slice(0, 10) !== tmrStr) {
      var day = date.getDay();
      if (day === 0 || calendar.length === 0) {
        var x = calendar.length * 13;
        calendar.push({
          transform: 'translate(' + x + ',0)',
          days: []
        })
      }

      calendar[calendar.length - 1].days.push({
        x: 14 - calendar.length,
        y: day * 12,
        date: date.toISOString().slice(0, 10),
        posts: []
      });

      if (day === 0 && date.getDate() < 8) {
        monthLabels.push({
          x: 14 - calendar.length + x,
          text: monthName[date.getMonth() - 1]
        })
      }

      date.setDate(date.getDate() + 1);
    }

    // handle post info
    posts.forEach(function(post) {
      var x = getIndexByDate(post.date)[0];
      var y = getIndexByDate(post.date)[1];

      calendar[x].days[y].posts.push({
        title: post.title,
        url: post.url
      });

      var len = calendar[x].days[y].posts.length;
      maxCount = Math.max(len, maxCount);
    })

    // handle fill color
    calendar.forEach(function(week) {
      week.days.forEach(function(day) {
        day.fill = getColorByLength(day.posts.length, maxCount);
      })
    })

    return calendar;
  }

  function getIndexByDate(date) {
    date = moment(date);
    var firstColumnLen = 7 - oneYearAgo.day();
    var days = date.diff(oneYearAgo, 'days');

    var x = days > firstColumnLen - 1 ? Math.ceil((days - firstColumnLen + 1) / 7) : 0;
    var y = days > firstColumnLen - 1 ? date.day() : date.day() - oneYearAgo.day();
    return [x, y];
  }

  function getColorByLength(len, max) {
    var colors = ['#eee', '#d6e685', '#8cc665', '#44a340', '#1e6823'];
    var colorsLen = colors.length - 1;
    var color = len ? colors[0] : colors[1];
    var interval = max / colorsLen;
    if (max < colorsLen) {
      color = colors[len];
    } else {
      color = colors[Math.ceil(len / interval)];
    }
    return color;
  }

</script>


    </div>
  </div>
</div>

</div>

<div class="footer-wrapper container">
  <footer class="footer clearfix">
    <div class="clearfix">
    <a href="https://king019.github.io" class="footer-logo">
      <i class="fa fa-github"></i>
    </a>
    <ul class="footer-social-link">
      <li>© 2019 king019</li>
      <li><a href="https://king019.github.io">Home</a></li>
      
      <li><a href="https://github.com/king019">Github</a></li>
      
    </ul>
    <div class="footer-theme-info">
      Theme <a href="//github.com/sabrinaluo/hexo-theme-replica">Replica</a>
      by <a href="//github.com/sabrinaluo">Hiitea</a> ❤ Powered by Hexo
    </div>
    </div>
    
  </footer>
</div>




<script src="/js/main.js"></script>

</body>
</html>
